# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/ee/development/cicd/templates.html
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Pages/Jigsaw.gitlab-ci.yml

# Jigsaw is a simple static sites generator with Laravel's Blade.
#
# Full project: https://github.com/tightenco/jigsaw

default:
  image: php:7.2

  # These folders are cached between builds
  cache:
    paths:
      - vendor/
      - node_modules/

  before_script:
    # Update packages
    - apt-get update -yqq
    # Install dependencies
    - apt-get install -yqq gnupg zlib1g-dev libpng-dev
    # Install Node 8
    - curl -sL https://deb.nodesource.com/setup_8.x | bash -
    - apt-get install -yqq nodejs
    # Install php extensions
    - docker-php-ext-install zip
    # Install Composer and project dependencies
    - curl -sS https://getcomposer.org/installer | php
    - php composer.phar install
    # Install Node dependencies
    - npm install

pages:
  script:
    - npm run production
    - mv build_production public
  artifacts:
    paths:
      - public
  rules:
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
  environment: production
